package com.cloud.api.domain.model;

import com.cloud.api.utils.ExcelUtils;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

@Data
@ExcelUtils.ExcelSheet(watermark = @ExcelUtils.Watermark(type = 0)
)
@Schema(description = "油车基本信息导出表")
public class OilInformationExcel {

    @Schema(description = "品牌名称")
    @ExcelUtils.ExcelExport(name = "table.field.brandName")
    private String brandName;

    @Schema(description = "车系名称")
    @ExcelUtils.ExcelExport(name = "table.field.seriesName")
    private String seriesName;

    @Schema(description = "车型名称")
    @ExcelUtils.ExcelExport(name = "table.field.modelName")
    private String modelName;

    @Schema(description = "公告型号")
    @ExcelUtils.ExcelExport(name = "table.field.noticeModel")
    private String noticeModel;

    @Schema(description = "车辆属性")
    @ExcelUtils.ExcelExport(name = "table.field.vehicleAttribute")
    private String vehicleAttribute;

    @Schema(description = "版本图片")
    @ExcelUtils.ExcelExport(name = "table.field.pictureUrl")
    private String pictureUrl;

    @Schema(description = "动力方式")
    @ExcelUtils.ExcelExport(name = "table.field.powerMode",kvs = {
            @ExcelUtils.KV(k="1",v="油电混合车"),
            @ExcelUtils.KV(k="2",v="纯电动"),
            @ExcelUtils.KV(k="3",v="插电式混动"),
            @ExcelUtils.KV(k="4",v="增程式"),
            @ExcelUtils.KV(k="5",v="燃料电池"),
            @ExcelUtils.KV(k="6",v="汽油"),
            @ExcelUtils.KV(k="7",v="CNG")
    })
    private Integer powerMode;

    @Schema(description = "续航里程（km）")
    @ExcelUtils.ExcelExport(name = "table.field.mileage")
    private String mileage;

    @Schema(description = "车辆级别")
    @ExcelUtils.ExcelExport(name = "table.field.vehicleLevel",kvs = {
            @ExcelUtils.KV(k="1",v="A级车"),
            @ExcelUtils.KV(k="2",v="B级车"),
            @ExcelUtils.KV(k="3",v="C级车")
    })
    private Integer vehicleLevel;

    @Schema(description = "颜色")
    @ExcelUtils.ExcelExport(name = "table.field.colour")
    private String colour;

    @Schema(description = "外形尺寸（mm）")
    @ExcelUtils.ExcelExport(name = "table.field.outerDimensions",columnWidth = 20)
    private String outerDimensions;

    @Schema(description = "排放依据标准")
    @ExcelUtils.ExcelExport(name = "table.field.emissionStandard",columnWidth = 22)
    private String emissionStandard;

    @Schema(description = "货厢栏板内尺寸（mm）")
    @ExcelUtils.ExcelExport(name = "table.field.cargoBoardDimensions",columnWidth = 25)
    private String cargoBoardDimensions;

    @Schema(description = "排放水平")
    @ExcelUtils.ExcelExport(name = "table.field.emissionLevel")
    private String emissionLevel;

    @Schema(description = "发动机生产企业")
    @ExcelUtils.ExcelExport(name = "table.field.engineManufacturer",columnWidth = 18)
    private String engineManufacturer;

    @Schema(description = "发动机排量（ml）")
    @ExcelUtils.ExcelExport(name = "table.field.engineCapacity",columnWidth = 21)
    private String engineCapacity;

    @Schema(description = "发动机型号")
    @ExcelUtils.ExcelExport(name = "table.field.engineModel")
    private String engineModel;

    @Schema(description = "发动机功率")
    @ExcelUtils.ExcelExport(name = "table.field.enginePower")
    private String enginePower;

    @Schema(description = "额定载质量（kg）")
    @ExcelUtils.ExcelExport(name = "table.field.ratedLoad")
    private String ratedLoad;

    @Schema(description = "总质量")
    @ExcelUtils.ExcelExport(name = "table.field.totalMass")
    private String totalMass;

    @Schema(description = "整备质量")
    @ExcelUtils.ExcelExport(name = "table.field.curbMass")
    private String curbMass;
}
